package com.to8to.thrift.esb.async.example.server;


public class ServerBCD { // extends AbstractServer{

//	public ServerBCD(ChannelInitializer<Channel> channelInitilizer) {
//		super(channelInitilizer);
//	}
//
//
//	@Override
//	public void onReloadConfig(Map<String, byte[]> config)
//	{
//		for(String file: config.keySet())
//		{
//			byte[] data = config.get(file);
//		
//			if(file.equals("server.properties"))
//			{
//				try {
//			
//					PropertiesConfiguration pc = new PropertiesConfiguration();
//					
//					pc.load(new ByteArrayInputStream(data));
//					
//					logger.info("load config: " + file + "\n");
//					
//					String d = new String(data);
//					
//					logger.info(d);
//					
//					String bind_host = pc.getString("bind_host");
//					
//					String report_host = pc.getString("report_host");
//					
//					int bind_port = pc.getInt("bind_port");
//					
//					int report_port = pc.getInt("report_port");
//					
//					super.bindAndReport(bind_host, bind_port, report_host, report_port);
//					
//				} catch (ConfigurationException e) {
//					// TODO Auto-generated catch block
//					e.printStackTrace();
//				}
//			}
////			else if(file.equals("logback.xml"))
////			{
////				String xml = new String(data);
////				LogUtils.resetConfigByData(xml);
////			}
//		}
//	}
//	
//	
//	public static void main(String[] args) {
//		
//		ServiceB.Processor<ServiceBIface> processorB = new ServiceB.Processor<ServiceBIface>(new ServiceBIface());
//		
//		ServiceC.Processor<ServiceCIface> processorC = new ServiceC.Processor<ServiceCIface>(new ServiceCIface());
//		
//		ServiceD.Processor<ServiceDIface> processorD = new ServiceD.Processor<ServiceDIface>(new ServiceDIface());
//		
//		TProtocolFactory protocalFactory = new TBinaryProtocol.Factory();
//		
//		SyncBizChannelHandler bizhandler = new SyncBizChannelHandler(processorB, processorC, processorD);
//		
//		ThriftBizServerChannelInitializer channelInitilizer = new ThriftBizServerChannelInitializer(protocalFactory, bizhandler, ServiceB.class, ServiceC.class, ServiceD.class);
//		
//		ServerBCD server = new ServerBCD(channelInitilizer);
//		
////		ZkConfig zkconfig = new ZkConfig("zk.properties");
//		
//		server.setSyncConfigFromZK(false);
//		
//		server.setReportAddressToZK(false);
//		
////		server.setZkConfig(zkconfig);
//		
////		server.setServiceInstance(ServiceB.class.getName(), "1");
//	
//		server.setBindHost("0.0.0.0");
//		
//		server.setBindPort(12345);
//		
//		server.start();
//	}

}
